//随即十六进制颜色

 function randomColor() {
    var strcolor = '#'
    var arr = [0,1,2,3,4,5,6,7,8,9, 'A', 'B', 'C', 'D', 'E', 'F'];
    for(var i=0;i<6;i++){
        // Math.floor(Math.random()*(arr.length-1-0+1)+0)
        // console.log(arr[Math.floor(Math.random()*(arr.length-1+1))]);
        strcolor += arr[Math.floor(Math.random()*(arr.length-1+1))];
    }
    return strcolor;
}
var color = randomColor()
console.log(color);

//  随机获取 区间内的数字
function randomNum(num1,num2) {
    // var min = Math.min(num1,num2);
    // var max = Math.max(num1,num2);

    var min = num1>num2?num2:num1;
    var max = num1>num2?num1:num2;

    var num = Math.floor(Math.random()*(max - min +1)+min)
    return num;

}

console.log(randomNum(20,50));


// 小于10 补零
function buling(num) {
    var num = num >= 10 ? num : '0' + num
    return num
}


//封装 选择排序
function choice(arr) {
    for(var i=0;i<arr.length-1;i++){
        var minIndex = i; // 假设 最小值 通过 索引假设
        for(var j=i+1;j<arr.length;j++){ 
            if(arr[minIndex] > arr[j]){    //如果条件成立，就是假设错了 0  1
                minIndex = j;   // 1
            }
        }
        var temp = arr[minIndex];
        arr[minIndex] = arr[i];
        arr[i] = temp;

    }
    return arr;
}
    
//随机函数
//2. 随机函数
function getRandom(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min
}
       
//获取 行内样式 和 非行内样式都可以
function getStyle(ele,attr){
    if(ele.currentStyle){
        return ele.currentStyle[attr];
    }else{
        return getComputedStyle(ele,false)[attr]
    }
}

//取消冒泡兼容
function stop(e){
    if(e && e.stopPropagation){
    //w3c标准,不支持IE浏览器
    e.stopPropagation( );
    }else{
    //不符合格w3c标准，只支持IE
    window.event.cancelBubble = true;
    }
}
    
//解绑事件
function removeEvent(ele,incident, handle){
    if(ele.removeElementListener){
        ele.removeElementListener(incident, handle)
    }else if(ele.detachEvent){
        ele.detachEvent( 'on '+incident, handle)
    }else{
    ele [ 'on' +type]=null
    }
}

// 封装处理传入参数方法
function getQueryString(url) {
    // 通过 ？分割 成数组 数组下标为 1 的就是所有的参数
    let urlStr = url.split('?')[1]

    // 判断如果没有参数 返回 null
    if (!urlStr) {
        return null
    }

    // 将获取到的参数 转码
    urlStr = decodeURI(urlStr)

    // 针对 所有的参数通过 & 分割 成 数组
    urlArr = urlStr.split('&')

    let urlObj = {}
    // 遍历所有的参数数组通过 = 分割成数组 以键值对的形式存到对象中
    urlArr.forEach(item => {
        let urlArr2 = item.split('=')
        urlObj[urlArr2[0]] = urlArr2[1]
    });
    return urlObj
}